]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
autorunManager: Clean up mount operations
authorJasper St. Pierre <jstpierre@mecheye.net>
Wed, 19 Sep 2012 04:38:26 +0000 (01:38 -0300)
committerJasper St. Pierre <jstpierre@mecheye.net>
Wed, 3 Oct 2012 17:34:52 +0000 (14:34 -0300)
Add a processMount function that's shared between mount scanning
and hotplug.

https://bugzilla.gnome.org/show_bug.cgi?id=684093

js/ui/components/autorunManager.js

index 541c75ca7cd601e26e443a08ad430857152ac535..942576ad374ec6bd6cf96a07458da89a9aaacb32 100644 (file)
@@ -175,16 +175,21 @@ const AutorunManager = new Lang.Class({
         this._volumeMonitor.disconnect(this._mountRemovedId);
     },
 
+    _processMount: function(mount, hotplug) {
+        let discoverer = new ContentTypeDiscoverer(Lang.bind(this, function(mount, apps, contentTypes) {
+            this._ensureResidentSource();
+            this._residentSource.addMount(mount, apps);
+
+            if (hotplug)
+                this._transDispatcher.addMount(mount, apps, contentTypes);
+        }));
+        discoverer.guessContentTypes(mount);
+    },
+
     _scanMounts: function() {
         let mounts = this._volumeMonitor.get_mounts();
-        mounts.forEach(Lang.bind(this, function (mount) {
-            let discoverer = new ContentTypeDiscoverer(Lang.bind (this, 
-                function (mount, apps) {
-                    this._ensureResidentSource();
-                    this._residentSource.addMount(mount, apps);
-                }));
-
-            discoverer.guessContentTypes(mount);
+        mounts.forEach(Lang.bind(this, function(mount) {
+            this._processMount(mount, false);
         }));
     },
 
@@ -194,14 +199,7 @@ const AutorunManager = new Lang.Class({
         if (!this._loginManager.sessionActive)
             return;
 
-        let discoverer = new ContentTypeDiscoverer(Lang.bind (this,
-            function (mount, apps, contentTypes) {
-                this._transDispatcher.addMount(mount, apps, contentTypes);
-                this._ensureResidentSource();
-                this._residentSource.addMount(mount, apps);
-            }));
-
-        discoverer.guessContentTypes(mount);
+        this._processMount(mount, true);
     },
 
     _onMountRemoved: function(monitor, mount) {